#pragma once
#include "ckCheckCaseManager.h"

namespace ck
{
	class CheckCaseManagerAccess : public CheckCaseManager
	{
	public:
		CheckCaseManagerAccess();
		virtual ~CheckCaseManagerAccess();

	protected:
		virtual void	BuildGetCaseSQL(char* szSQL, size_t nSize);
		virtual void	BuildGetCasesSQL(char* szSQL, size_t nSize, z_uint32 nModelCode);
		virtual void	BuildGetCaseSQL(char* szSQL, size_t nSize, const char* szName);
		virtual void	BuildGetCaseSQL(char* szSQL, size_t nSize, z_uint32 nCaseCode);
		virtual void	BuildInsertModelSQL(char* szSQL, size_t nSize, z_uint32 code, const char* szCode, const char* szName, z_uint32	modelCode, const char* szDescription);

		virtual void	BuildCaseAddRuleSQL(char* szSQL, size_t nSize, z_uint32 nCaseCode, z_uint32 nItemCode, z_uint32 nOperCode, z_uint32 nModCode=0);

		virtual void	BuildRemoveCaseSQL(char* szSQL, size_t nSize, z_uint32 nCaseCode);
		virtual void	BuildRemoveRulesSQL(char* szSQL, size_t nSize, z_uint32 nCaseCode);

		virtual void	BuildFindCheckItemSQL(char* szSQL, size_t nSize, z_uint32 nCaseCode, z_uint32 nItemCode);
		virtual void	BuildGetCaseOperatorsSQL(char* szSQL, size_t nSize, z_uint32 nCaseCode);
	};
}

